The following description relates generally to e-learning and in particular to methods and systems for flexible e-learning.
Systems and applications for delivering computer-based training (CBT) have existed for many years. However, CBT systems historically have not gained wide acceptance. A problem hindering the reception of CBTs as a means of training workers and learners is the compatibility between systems. A CBT system works as a stand-alone system that is unable to use content designed for use with other CBT systems.
Early CBTs also were based on hypermedia systems that statically linked content. User guidance was given by annotating the hyperlinks with descriptive information. The trainee could proceed through learning material by traversing the links embedded in the material. The structure associated with the material was very rigid, and the material could not be easily written, edited, or reused to create additional or new learning material.
Newer methods for intelligent tutoring and CBT systems are based on special domain models that must be defined prior to creation of the course or content. Once a course is created, the material may not be easily adapted or changed for different learners"" specific training needs or learning styles. As a result, the courses often fail to meet the needs of the trainee and/or trainer.
The special domain models also have many complex rules that must be understood prior to designing a course. As a result, a course is too difficult for most authors to create who have not undergone extensive training in the use of the system. Even authors who receive sufficient training may find the system difficult and frustrating to use. In addition, the resulting courses may be incomprehensible due to incorrect use of the domain model by the authors creating the course. Therefore, for the above and other reasons, new methods and technology are needed to supplement traditional computer based training and instruction.
In one general aspect, a learning system, method, and software may be used to generate a navigation tree and a navigation path through a course based on a learning strategy. The course may be navigated by receiving graphs corresponding to the course, applying the learning strategy to the graphs, and generating a navigation path through the course for the learner based on the applied strategy. The navigation path may be used to suggest content from the course for presentation to a learner.
The learner may choose to navigate to content suggested by the navigation path. In addition, in one implementation, the learner may choose to navigate to material that is not suggested. The navigation path also may be used to hide content that a learner may not be ready to navigate to.
In another general aspect, the graphs include a number of nodes. Each node may correspond to a course, a sub-course, a learning unit, or a knowledge item. The nodes may include attributes that correspond to metadata. The metadata may include knowledge types. Metadata also may be used to store competencies. In addition, there may be a relation between the nodes of a graph.
In yet another general aspect, applying the learning strategy includes applying a set of Boolean predicates to the one or more graphs. In addition, functions may be applied to the nodes to generate sets. The navigation path may be generated by applying an ordering function to the sets to generate an ordered list. The navigation path may be based on the ordered list. A set of navigation nodes may be determined based on the functions that indicate nodes identified by the learning strategy to be presented to the learner. A set of one or more start nodes may be determined from the functions that indicate a node within a graph that may be visited by the learner before other nodes.
Other features and advantages will be apparent from the description, the drawings, and the claims.